package com.zlyx.easy.database.utils;

import org.springframework.core.annotation.AnnotationUtils;

import com.zlyx.easy.core.utils.ObjectUtils;
import com.zlyx.easy.core.utils.SpringUtils;
import com.zlyx.easy.database.annotations.TableAlias;

/**
 * @Auth 赵光
 * @Describle
 * @2019年1月9日 下午8:40:39
 */
public class TableUtils {

	/**
	 * 根据实体类获取别名
	 * @param tableName
	 * @return
	 */
	public static String getAlias(String tableName) {
		return getAlias(SpringUtils.getBeanClass(tableName));
	}
	
	/**
	 * 根据表名获取别名
	 * @param tableName
	 * @return
	 */
	public static String getAlias(Class<?> tableClass) {
		TableAlias tableAlias = AnnotationUtils.findAnnotation(tableClass, TableAlias.class);
		if(ObjectUtils.isNotEmpty(tableAlias) && !"".equals(tableAlias.value())) {
			return tableAlias.value();
		}
		return tableClass.getSimpleName().toLowerCase();
	}
	
}
